Conventionally, there is a game system where a user can perform play by vertically holding a controller, and can also perform play by horizontally holding the controller.
In the above game system, however, no regard is given to the varying of the operation of a vibrator in the controller between when the user performs play by horizontally holding the controller and when the user performs play by vertically holding the controller. That is, in the above game system, no regard is given to appropriate control of the vibrator in accordance with the manner of using the controller.
Therefore, it is an object of an exemplary embodiment to provide a storage medium having stored therein an information processing program, an information processing apparatus, an information processing system, and an information processing method that are capable of, in a system where an operation can be performed using a plurality of operation apparatuses, imparting an appropriate vibration in accordance with the manner of using the operation apparatuses.
To achieve the above object, the exemplary embodiment can employ, for example, the following configurations. It should be noted that it is understood that, to interpret the descriptions of the claims, the scope of the claims should be interpreted only by the descriptions of the claims. If there is a conflict between the descriptions of the claims and the descriptions of the specification, the descriptions of the claims take precedence.
In an exemplary configuration of a non-transitory computer-readable storage medium having stored therein an information processing program according to the exemplary embodiment, an information processing program is executed by a computer included in an information processing apparatus capable of communicating with each of a first operation apparatus including a first vibrator and a second operation apparatus including a second vibrator. The information processing program causes the computer to execute: setting, as an operation method, either of a first operation method using the first operation apparatus and the second operation apparatus as a set, and a second operation method using either of the first operation apparatus and the second operation apparatus; when the first operation method is set, generating first vibration data for vibrating the first vibrator and second vibration data for vibrating the second vibrator, and when the second operation method is set, generating third vibration data based on the first vibration data and the second vibration data; and when the first operation method is set, transmitting the first vibration data to the first operation apparatus and transmitting the second vibration data to the second operation apparatus, and when the second operation method is set, transmitting the third vibration data to the first operation apparatus or the second operation apparatus for use in the second operation method.
Based on the above, in the case of a first operation method in which a first operation apparatus and a second operation apparatus are used as a set, it is possible to vibrate each operation apparatus based on different vibration data. Thus, it is possible to impart an appropriate vibration corresponding to each operation apparatus. Further, in the case of a second operation method in which either of the first operation apparatus and the second operation apparatus is used, vibration data for a single operation apparatus is generated based on vibration data for vibrating each of the two operation apparatuses, and the vibration data is transmitted to either of the operation apparatuses. Thus, even when either of the first operation method and the second operation method is set, it is possible to impart an appropriate vibration based on the same vibration data.
Further, in the generation of the vibration data, when the second operation method is set, the greater of an amplitude of a vibration waveform based on the first vibration data and an amplitude of a vibration waveform based on the second vibration data may be selected every predetermined time, and the selected vibration data may be generated as the third vibration data.
Based on the above, when third vibration data is generated, a greater amplitude as a whole can be selected. Thus, it is possible to impart vibration stimulus to a user while maintaining the characteristics of the entirety of a vibration waveform to be input.
Further, in the generation of the vibration data, when the second operation method is set, the third vibration data may be generated by superimposing a vibration waveform based on the first vibration data and a vibration waveform based on the second vibration data on each other.
Based on the above, when third vibration data is generated, it is possible to cause a user to perceive vibrations overlapping each other without lacking vibrations.
Further, the information processing program may further cause the computer to execute: receiving, from the first operation apparatus, first operation data corresponding to a first operation on the first operation apparatus and second operation data corresponding to a second operation different from the first operation; and when the first operation method is set, performing predetermined information processing in accordance with the first operation data, and when the second operation method is set, and the first operation apparatus is used in the second operation method, performing the same information processing as the information processing in accordance with the second operation data.
Based on the above, the same information processing can be performed on a different operation between when an operation is performed by the first operation method and when an operation is performed by the second operation method. Thus, it is possible to set operation methods rich in variations.
Further, in the performance of the information processing, while a predetermined application is executed, the predetermined information processing may be performed in accordance with the first operation data when the first operation method is set, and the same information processing as the predetermined information processing may be performed in accordance with the second operation data when the second operation method is set, and the first operation apparatus is used in the second operation method.
Based on the above, even when the same application is executed, and a plurality of operation methods can be set, it is possible to impart an appropriate vibration.
Further, the information processing program may further cause the computer to execute: receiving, from the first operation apparatus, first operation data corresponding to a first operation on the first operation apparatus and second operation data corresponding to a second operation different from the first operation, and receiving, from the second operation apparatus, third operation data corresponding to a third operation on the second operation apparatus; and when the first operation method is set, performing predetermined information processing in accordance with the first operation data and the third operation data, and when the second operation method is set, and the first operation apparatus is used in the second operation method, performing the same information processing as the information processing in accordance with the second operation data.
Based on the above, the same information processing as information processing performed on an operation performed using both the first operation apparatus and the second operation apparatus in the first operation method can be performed by an operation performed using only the first operation apparatus in the second operation method. Thus, it is possible to set operation methods rich in variations.
Further, the information processing program may further cause the computer to execute: receiving, from the first operation apparatus, first operation data corresponding to a first operation on the first operation apparatus; when the first operation method is set, performing predetermined information processing in accordance with the first operation data, and when the second operation method is set, and the first operation apparatus is used in the second operation method, performing information processing different from the information processing in accordance with the first operation data.
Based on the above, even when the same operation is performed when an operation is performed by the first operation method and when an operation is performed by the second operation method, different information processing can be performed. Thus, it is possible to set operation methods rich in variations.
Further, in the performance of the information processing, game processing may be performed as the predetermined information processing.
Based on the above, when game processing is performed, it is possible to impart an appropriate vibration to the first operation apparatus and/or the second operation apparatus.
Further, in the setting of the operation method, the operation method may be set before a game in the game processing is started.
Based on the above, before a game is started, it is possible to set an operation method desired by a user.
Further, the exemplary embodiment may be carried out in the forms of an information processing apparatus, an information processing system, and an information processing method.
According to the exemplary embodiment, in either of an operation method using two operation apparatuses and an operation method using a single operation apparatus, it is possible to impart an appropriate vibration to a user of the operation apparatuses.
These and other objects, features, aspects and advantages of the exemplary embodiments will become more apparent from the following detailed description of the exemplary embodiments when taken in conjunction with the accompanying drawings.